home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
com
/
othernet
/
fidonet
/
sonja121
/
sonja.txt
< prev
Wrap
Text File
|
1995-03-11
|
8KB
|
170 lines
SONJA
=======
Ein Message-Selector
Jeder hat sich sicher schon einmal darber gergert, dass man in einer Area
sehr viele Messages hat, die einem gar nicht interessieren. Bisher war es
immer sehr aufwendig und zeitraubend, diejenigen Messages herauszusuchen,
die man wirklich lesen will.
Damit hat es nun ein Ende. Mit dem Programm "SONJA" kann man all diejenigen
Messages als gelscht markieren, die man sicher nicht lesen mchte.
Da die Messages nicht wirklich gelscht werden, ist es jederzeit mglich,
sie wieder "zum Leben" zu erwecken. Falls man zwischendurch jedoch einen
Cruncher ( TIDY_UP, FCRUN, BYTHALON etc. ) verwendet hat, sind die
markierten Messages natrlich definitiv und unwiederruflich gelscht.
Damit SONJA korrekt arbeitet, sind die vier Dateien SONJA.TTP, SONAJ.CFG,
AREAS.BBS und BINKLEY.CFG ntig. Die beiden .CFG Dateien mssen sich ent-
weder im gleichen Directory wie SONJA.TTP befinden oder eine der beiden
Environment-Variablen "MAILER" oder "BINKLEY" enthlt den Pfad, wo sich
diese beiden Dateien befinden.
Aus der Datei BINKLEY.CFG werden nur gerade zwei Zeilen bentigt: Dies ist
zum einen der Loglevel (Statement LOGLEVEL), den SONJA benutzen soll. Steht dort
eine 5, so macht SONJA sehr ausfhrliche Meldungen. Bei einer 0 werden
gerade noch die Fehlermeldungen angezeigt.
Der zweite Eintrag, der ausgewertet wird, ist STATUSLOG. In die damit angegebene
Datei werden auf Wunsch alle Bildschirmausgaben mitprotokolliert.
Welche Areas bearbeitet werden sollen, und welche Bedingungen dann eine
Message erfllen muss, um gelscht zu werden, erfhrt SONJA aus der Datei
SONJA.CFG. Diese ist eine einfache Textdatei, welche mit jedem Editor erstellt
werden kann. Der Aufbau dieser Datei ist dabei folgender:
Zuerst wird mit "AREA=" angegeben, welche Area bearbeitet werden soll.
Nachdem bekannt ist, welche Area bearbeitet werden soll, folgen die
Bedingungen. Diese knnen in einer UPN (wie die HP Taschenrechner) Technik
miteinander verknpft werden: Jede Bedingung legt einen Wert "TRUE" oder
"FALSE" auf einem Stack ab; ja nach dem, ob die Bedingung zutraf oder nicht.
Neben den Bedingungen gibt es dann aber auch noch Kommandos, welche die
Elemente auf dem Stack manipulieren. Man kann auf diese Art und Weise beliebige
Kombinationen der Bedingungen erreichen.
Folgende Bedingungen sind mglich:
TO <String>:
Sofern der Adressat mit <String> bereinstimmt, liefert der Vergleich TRUE.
FROM <String>:
Sofern der Absender mit <String> bereinstimmt, liefert der Vergleich TRUE.
FOT <String>:
FOT ist eine Abkrzung fr FROM_OR_TO. Dieser Vergleich liefert TRUE
sofern der Absender oder der Adressat mit <String> bereinstimmt.
SUBJECT <String>:
Wenn das Subject mit <String> bereinstimmt, liefert der Vergleich TRUE.
LESS <Zahl>:
Liefert TRUE, sofern die Lnge der Message kleiner als <Zahl> ist.
GREATER <Zahl>:
Liefert TRUE, sofern die Lnge der Message grsser als <Zahl> ist.
OLDER <Zahl>:
Liefert TRUE, sofern die entsprechende Message schon lnger als <Zahl>
Tage im eigenen System ist.
NEWER <Zahl>:
Liefert TRUE, sofern die entsprechende Msg weniger als <Zahl> Tage
im eigenen System ist.
Bei allen Bedingungen, bei denen ein Vergleichsstring angegeben werden
muss, kann man fr den String auch Wildcards verwenden. "*" passt dabei auf
beliebig viele Zeichen, whrend "?" auf genau ein Zeichen passt. Zudem wird
nicht zwischen Gross- und Kleinbuchstaben unterschieden. Weil die einzelnen
Bedingungen und Kommandos durch nicht alphanumerische Zeichen getrennt
werden, mssen die Strings in einfache oder doppelte Anfhrungszeichen
( " bzw. ' ) eingeschlossen werden, falls solche nicht alphanumerische
Zeichen im String vorkommen. Als alphanumerische Zeichen gelten alle Buchstaben
und Ziffern sowie die Zeichen ".", "_", "*" und "?".
Fr die Stackmanipulationen stehen die folgenden Kommandos zur Verfgung:
OR: Die beiden obersten Stack Elemente werden OR verknpft.
AND: Die beiden obersten Stack Elemente werden AND verknpft.
XOR: Die beiden obersten Stack Elemente werden XOR verknpft.
NOT: Das oberste Stack Element wird negiert.
DUP: Das oberste Stack Element wird dupliziert.
SWAP: Die beiden obersten Elemente werden vertauscht.
Kommt in einer Zeile ein Strichpunkt ( ; ) vor, so werden alle Zeichen bis
zum Ende dieser Zeile ignoriert. Befindet sich der Strichpunkt jedoch
zwischen zwei Anfhrungszeichen ( " bzw. ' ), so wird er nicht beachtet.
Die Liste der Bedingungen wird durch ein "END" abgeschlossen. Zu diesem
Zeitpunkt muss sich noch genau ein Element auf dem Stack befinden. Ist es
TRUE, so wird die entsprechende Message als gelscht markiert.
Nach dem "END" kann mit einem "AREA=" eine neue Area angegeben werden.
Sollten nun noch Fragen offen sein (was ich sogar schwer annehme) schaut
man sich am Besten einmal das beiliegende SONJA.CFG an. Sollten
immer noch Fragen offen sein, so wende man sich an den Autor.
In der Command Line knnen folgende Parameter an SONJA bergeben werden:
-a Area: Es wird nur gerade die angegebene Area bearbeitet. Alle anderen
bleiben unberhrt.
-c Config: Anstelle der Datei "SONJA.CFG" wird die dem Parameter "-c"
folgende Datei als Konfigurationsdatei genommen. Ein Pfad kann dabei NICHT
angegeben werden. Die alternative Datei muss sich also im gleichen Ordner
wie SONJA.CFG befinden.
-d: Direct: Es wird nur gerade die mit "-a" angegebene Area bearbeitet.
Anstatt die Bedingungen jedoch aus der Datei SONJA.CFG zu nehmen, kann
man sie gleich hinter "-d" angeben. Die Angaben "AREA=" und "END" sind
dabei nicht anzugeben. Vorsicht: Weil die Bedingungen aus mehreren einzelnen
Wrtern bestehen, mssen sie in Anfhrungszeichen ( " ) gesetzt werden.
Kommen innerhalb der Bedingungen Texte aus mehreren Wrtern vor (z.B.
Vorname Name), so sind diese in einfache Anfhrungszeichen ( ' ) zu setzen.
-e: Every: Jede Message der in der Konfigurationsdatei angebenen Areas wird
bearbeitet. Das heisst, bei jeder Message wird das KILLED-Flag gesetzt,
gelscht oder invertiert; unabhngig davon, ob die Bedingungen zutreffen
oder nicht.
-h: Help: Es erscheint eine kleine Hilfe.
-i: Invert: Bei allen Messages, auf die die Bedingungen zutreffen, wird das
KILLED Flag invertiert anstatt gesetzt.
-l #: Der Loglevel wird auf # gesetzt. Standardmssig wird der Loglevel aus
BINKLEY.CFG genommen. Bei 5 werden viele Ausgaben gemacht, bei 0 kommen nur
noch die Fehlermeldungen (if any).
-r: Rekill: Bei allen Messages, auf die die Bedingungen zutreffen, wird das
KILLED Flag gelscht. So kann man in einem ersten Druchlauf gelschte
Messages wieder "entlschen".
-s: StatusLog. Alle Bildschirmausgaben werden zustzlich in das LogFile
(StatusLog in BINKLEY.CFG) protokolliert. Als Krzel wird SNJA verwendet.
-w: Wait: SONJA wartet am Schluss auf einen Tastendruck.
SONJA ist Public Domain. Spenden sind jedoch jederzeit willkommen.
Sollten sie kein Geld brig habe, so bin ich auch schon mit einer
Postkarte oder hnlichem zufrieden.
Sofern sie immer das Programm UND diese Dokumentation kopieren, knnen
sie es allen interessierten Personen weitergeben. Dies soll jedoch
ohne Profit von statten gehen.
SONJA ist ein Programm von
Markus Bubendorf
Kirchgasse 3
CH-4124 Schnenbuch
Tel.:+41 61 482 02 20
E-Mail: 2:301/212.25 @ FidoNet
oder markus.bubendorf@zrh1.siemens-albis.scn.inet.ch